{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "349cb649",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "葡萄酒数据集如下：\n",
      "     label     a1    a2    a3    a4   a5    a6    a7    a8    a9    a10   a11  \\\n",
      "0        1  14.23  1.71  2.43  15.6  127  2.80  3.06  0.28  2.29   5.64  1.04   \n",
      "1        1  13.20  1.78  2.14  11.2  100  2.65  2.76  0.26  1.28   4.38  1.05   \n",
      "2        1  13.16  2.36  2.67  18.6  101  2.80  3.24  0.30  2.81   5.68  1.03   \n",
      "3        1  14.37  1.95  2.50  16.8  113  3.85  3.49  0.24  2.18   7.80  0.86   \n",
      "4        1  13.24  2.59  2.87  21.0  118  2.80  2.69  0.39  1.82   4.32  1.04   \n",
      "..     ...    ...   ...   ...   ...  ...   ...   ...   ...   ...    ...   ...   \n",
      "173      3  13.71  5.65  2.45  20.5   95  1.68  0.61  0.52  1.06   7.70  0.64   \n",
      "174      3  13.40  3.91  2.48  23.0  102  1.80  0.75  0.43  1.41   7.30  0.70   \n",
      "175      3  13.27  4.28  2.26  20.0  120  1.59  0.69  0.43  1.35  10.20  0.59   \n",
      "176      3  13.17  2.59  2.37  20.0  120  1.65  0.68  0.53  1.46   9.30  0.60   \n",
      "177      3  14.13  4.10  2.74  24.5   96  2.05  0.76  0.56  1.35   9.20  0.61   \n",
      "\n",
      "      a12   a13  \n",
      "0    3.92  1065  \n",
      "1    3.40  1050  \n",
      "2    3.17  1185  \n",
      "3    3.45  1480  \n",
      "4    2.93   735  \n",
      "..    ...   ...  \n",
      "173  1.74   740  \n",
      "174  1.56   750  \n",
      "175  1.56   835  \n",
      "176  1.62   840  \n",
      "177  1.60   560  \n",
      "\n",
      "[178 rows x 14 columns]\n",
      "特征数组的形状：(178, 13)\n",
      "特征数组的形状：(178, 1)\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "#定义数据集的列名\n",
    "file = 'item4/wine.data'\n",
    "names=['label','a1','a2','a3','a4','a5','a6','a7','a8','a9','a10','a11','a12','a13']\n",
    "dataset=pd.read_csv(file,names=names)\n",
    "\n",
    "print('葡萄酒数据集如下：')\n",
    "print(dataset)\n",
    "\n",
    "#分别提取特征和标签值数组\n",
    "data =dataset.iloc[range(0,178),range(1,14)]\n",
    "target=dataset.iloc[range(0,178),range(0,1)]\n",
    "print(f'特征数组的形状：{data.shape}')\n",
    "print(f\"特征数组的形状：{target.shape}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8a5fa7f9",
   "metadata": {},
   "source": [
    "查找数据集中的异常数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "7ee552d4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "a 1 中异常值： []\n",
      "a 2 中异常值： [5.8 5.51 5.65]\n",
      "a 3 中异常值： [1.36 3.22 3.23]\n",
      "a 4 中异常值： [10.6 30.0 28.5 28.5]\n",
      "a 5 中异常值： [151.0 139.0 136.0 162.0]\n",
      "a 6 中异常值： []\n",
      "a 7 中异常值： []\n",
      "a 8 中异常值： []\n",
      "a 9 中异常值： [3.28 3.58]\n",
      "a 10 中异常值： [10.8 13.0 11.75 10.68]\n",
      "a 11 中异常值： [1.71]\n",
      "a 12 中异常值： []\n",
      "a 13 中异常值： []\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 15 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "\n",
    "#画箱型图\n",
    "#plt.style.use('seaborn-darkgrid')\n",
    "plt.rcParams['axes.unicode_minus']=False\t\t#正常显示负号\n",
    "data.plot(kind='box',subplots=True,layout=(3,5),sharex=False,sharey=False)\n",
    "#查找异常数据并输出\n",
    "p=data.boxplot(return_type='dict')\t             #返回字典类型数据\n",
    "for i in range(13):\n",
    "    y=p['fliers'][i].get_ydata()\t\t\t#查找异常数据\n",
    "    print('a',i+1,'中异常值：',y)\t\t\t#输出异常数据\n",
    "plt.show()\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "AIG241",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.14.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
